package com.weixin.service;

import java.util.List;
import java.util.Map;

import com.frame.ar.db.QueryParamsAnd;
import com.frame.ar.kit.ObjKit;
import com.frame.util.MapUtil;
import com.jfinal.plugin.activerecord.Db;
import com.jfinal.plugin.activerecord.Record;
import com.weixin.model.AppMenu;

/*******************************************
 * 作用描述：微信后台基础数据服务层
 *******************************************
 * @author LRC
 * @createDate 2015-9-20
 * @version v1.0 
 * @updateRecord 格式：时间，作者，修改说明
 *******************************************
 * 
 */
public class WxBaseDataService {
	/*******************************************
	 * 功能描述：app对应的菜单数据
	 ******************************************* 
	 * @createDate 2015-9-12 by LRC
	 * @return
	 * @updateRecord 格式：时间，作者，修改说明
	 ******************************************* 
	 * 
	 */
	public static List<Map<String, Object>> getAppMenuTree(Object appcfgId) {
		QueryParamsAnd qr = new QueryParamsAnd(1);
		qr.setTableName(AppMenu.dao.getTableName())
		  .setSelectColumn("id,id tId,pid pId,name,mLevel")
		  .put("appcfgId", "=", appcfgId)
		  .setOrder("orderid");
		List<Record> menus = Db.find(qr.getQueryString(),qr.getValue());
		
		return MapUtil.getMapListFromRecord(menus);
	}

	/*******************************************
	 * 功能描述：删除菜单
	 ******************************************* 
	 * @createDate 2015-9-12 by LRC
	 * @return
	 * @updateRecord 格式：时间，作者，修改说明
	 ******************************************* 
	 * 
	 */
	public static boolean delAppMenu(Object id) {
		if(ObjKit.isNull(id))return true;
		//判断是否有子节点
		Integer n = AppMenu.dao.getChildrenNum(id);
		if(n>0)return false;
		return AppMenu.dao.deleteById(id);
	}
}
